Existence pole v tabulce (IB)
Otázka od: PeJaSoft
25. 9. 2002 11:28
Zdravim,
da se nejak jednoduse zjistit, zda v dane tabulce existuje pole? Napadl me
zpusob pres SELECT z tabulky, tusim RDB$neco_fields, WHERE
(RDB$tustim_tablename = nazev tabulky) a (RDB$necojako_fieldname = nazev
pole).
Pokud bude vysledek.RecordCount > 0, tak tam existuje.
Existuje neco jednodussiho?
Jedna se o IB/FB a DBX.
Diky za radu.
Petr Jarkovsky
Odpovedá: Ondrej Kelle
25. 9. 2002 11:17
> da se nejak jednoduse zjistit, zda v dane tabulce existuje
> pole? Napadl me
> zpusob pres SELECT z tabulky, tusim RDB$neco_fields, WHERE
> (RDB$tustim_tablename = nazev tabulky) a
> (RDB$necojako_fieldname = nazev
> pole).
> Pokud bude vysledek.RecordCount > 0, tak tam existuje.
Ano, napriklad takto:
select rdb$field_name from rdb$relation_fields where (rdb$relation_name =
'MYTABLENAME') and (rdb$field_name = 'MYFIELDNAME')
HTH
TOndrej
Odpovedá: Martin Schayna
25. 9. 2002 14:19
----- Original Message -----
From: "PeJaSoft" <pejasoft@volny.cz>
> da se nejak jednoduse zjistit, zda v dane tabulce existuje pole? Napadl me
> zpusob pres SELECT z tabulky, tusim RDB$neco_fields, WHERE
> (RDB$tustim_tablename = nazev tabulky) a (RDB$necojako_fieldname = nazev
> pole).
To je jediny zpusob, pokud nejake komponenty pro pristup k IB/FB
poskytuji jednodussi zpusob, delaji to interne take takto.
Abys to nemusel opakovat, muzes si stahnout vsechny fieldy a
cachovat na klientovi.
select RDB$FIELD_NAME
from RDB$RELATION_FIELDS
where RDB$RELATION_NAME = :tabulka